package com.wyw.design.model.learning.behavioral.status;

/**
 * @Title   电视机抽象状态
 * @Description
 * @Author Mr Wu yewen.wu.china@gmail.com
 * @Date 2023/4/19 13:48
 * Update History:
 * Author        Time            Content
 */
public abstract class TVState {
    // 使用遥控器作为上下文，控制电视机状态的切换
    protected RemoteControlMachine remoteControlMachine;

    public void setRemoteControlMachine(RemoteControlMachine remoteControlMachine) {
        this.remoteControlMachine = remoteControlMachine;
    }

    // 开机
    abstract void powerOn();
    // 关机
    abstract void powerOff();
    // 播放
    abstract void play();
    // 待机
    abstract void standby();
}
